package com.ibeeking.found.msg.rest.service;

import com.ibeeking.found.msg.service.common.bo.SysMsgTemplateBO;
import com.ibeeking.found.msg.service.common.param.SysMsgTemplateParam;

import com.ibeeking.found.msg.service.common.query.SysMsgTemplateQuery;
import com.ibeeking.found.msg.service.common.vo.SysMsgTemplateParamVO;
import com.ibeeking.found.msg.service.common.vo.SysMsgTemplateVO;

import java.util.List;

/**
 * ISysMsgTemplateService
 * description 系统消息模板配置服务
 * @Author ibeeking
 * @Date 2020-12-09 10:54
 */
public interface ISysMsgTemplateService {
    /**
     *  系统消息模板列表
     *
     * @param
     * @return
     */
    List<SysMsgTemplateVO> list(SysMsgTemplateQuery query);
    /**
     * 邮件模板列表
     *
     * @param
     * @return
     */
    List<SysMsgTemplateVO> listAll();
    /**
     * 邮件模板列表
     *
     * @param
     * @return
     */
    List<SysMsgTemplateVO> listByConfigId(Long configId);
    /**
     * 模板参数列表
     *
     * @param
     * @return
     */
    List<SysMsgTemplateParamVO> listSysMsgTemplateParam(Long templateId);
    /***
     * 修改模板
     */
    Boolean modify(SysMsgTemplateParam param);
    /***
     * 通过id查询模板
     */
    SysMsgTemplateVO view(Long id);
    /***
     * 通过code查询模板
     */
    SysMsgTemplateVO viewByCode(String code);
    /***
     * 通过id查询模板
     */
    SysMsgTemplateBO queryTemplateById(Long id);
    /***
     * 通过Code查询模板
     */
    SysMsgTemplateBO queryTemplateByCode(String code);
    /***
     * 修改状态
     */
    Boolean changePublishStatus(Long id, Integer status);
}
